package br.com.foxinline.servico;

import br.com.foxinline.generico.ServicoGenerico;
import br.com.foxinline.modelo.ConfigIptu;
import java.math.BigDecimal;
import java.util.Calendar;
import java.util.GregorianCalendar;
import javax.ejb.Stateless;

/**
 *
 * @author roniere
 */
@Stateless
public class ConfigIptuServico extends ServicoGenerico<ConfigIptu> {

    public ConfigIptuServico() {
        super(ConfigIptu.class);
    }

    @Override
    public void save(ConfigIptu entity) {

        if (entity.getDesconto() == null) {
            entity.setDesconto(BigDecimal.TEN);
        }

        if (entity.getValorMinimoParcela() == null) {
            entity.setValorMinimoParcela(new BigDecimal(25.40));
        }

        if (entity.getDataVencimento() == null) {

            Calendar calendar = GregorianCalendar.getInstance();
            calendar.set(Calendar.MONTH, Calendar.AUGUST);
            calendar.set(Calendar.DAY_OF_MONTH, 31);

            entity.setDataVencimento(calendar.getTime());
        }

        super.save(entity);
    }

    @Override
    public void update(ConfigIptu entity) {

        if (entity.getDesconto() == null) {
            entity.setDesconto(BigDecimal.TEN);
        }

        if (entity.getValorMinimoParcela() == null) {
            entity.setValorMinimoParcela(new BigDecimal(25.40));
        }

        if (entity.getDataVencimento() == null) {

            Calendar calendar = GregorianCalendar.getInstance();
            calendar.set(Calendar.MONTH, Calendar.AUGUST);
            calendar.set(Calendar.DAY_OF_MONTH, 31);

            entity.setDataVencimento(calendar.getTime());
        }

        super.update(entity);
    }
}
